跳到主要内容

生产环境部署建议

最后 更新

本文档用于生产环境部署 APO 时的一些生产环境部署建议。

1. APO-Server 配置使用托管单节点 Clickhouse

准备工作

  • Clickhouse 版本至少为22.8及以上。
  • 需要提前创建数据库apo,并授权用户。
  • 本文档以用户名apo-user,密码Apo@123456为例。
  • 需要 Clickhouse 实例处于运行状态而不是与 APO-Server 同时启动

配置 APO-Server 部署文件

创建文件apo-values.yaml,并根据您的需求进行定义,配置下方配置,并在部署阶段挂载配置。

# host         : 托管 Clickhouse 访问地址
# nativePort : 托管 Clickhouse Native访问端口
# httpPort : 托管 Clickhouse HTTP访问端口
# username : 托管 Clickhouse 访问用户名,需要双引号
# password : 托管 Clickhouse 访问密码,需要双引号
# database : 托管 Clickhouse 访问数据库名,非必要不用修改,需要双引号
global:
clickhouse:
host: "apo-clickhouse-svc" # FIXME
nativePort: 9000 # FIXME
httpPort: 8123 # FIXME
username: "apo-user" # FIXME
password: "Apo@123456" # FIXME
database: "apo"

## 配置 APO 组件
# APO-Server 配置
# 配置 APO-Server 不创建 Clickhouse 实例
altinity-clickhouse-operator:
enabled: false
# 持久化配置,推荐打开,默认为false
# 如果为持久化配置则需要根据PVC为 victoria-metrics 和 apo-backend 创建PV
victoria-metrics-single:
server:
persistentVolume:
enabled: true
apo-backend:
persistence:
enabled: true

配置完成,回到《安装 APO-Server》文档继续完成部署

验证

在 APO-Server 部署成功后,apo-collector组件会自动在apo数据库中创建如下 table ,即代表 clickhouse 配置成功

agent_log
alert_event
error_propagation
...
service_relation
service_topology
slow_report
span_trace

2. APO-Server 配置使用托管 Clickhouse 集群

准备工作

  • Clickhouse 版本至少为22.8及以上。
  • 需要提前创建数据库apo,并授权用户。
  • 本文档以用户名apo-user,密码Apo@123456,Clickhouse集群名为ck_clickhouse为例。
  • 需要 Clickhouse 实例处于运行状态而不是与 APO-Server 同时启动

配置 APO-Server 部署文件

创建文件apo-values.yaml,并根据您的需求进行定义,配置下方配置,并在部署阶段挂载配置。

# host         : 托管 Clickhouse 访问地址
# nativePort : 托管 Clickhouse Native访问端口
# httpPort : 托管 Clickhouse HTTP访问端口
# username : 托管 Clickhouse 访问用户名,需要双引号
# password : 托管 Clickhouse 访问密码,需要双引号
# database : 托管 Clickhouse 访问数据库名,非必要不用修改,需要双引号
# clusterName : 托管 Clickhosue 集群名,需要双引号
# replication : 用于配置在clickhouse集群模式下创建表是否采用副本,默认 false,需要双引号
global:
clickhouse:
host: "apo-clickhouse-svc" # FIXME
nativePort: 9000 # FIXME
httpPort: 8123 # FIXME
username: "apo-user" # FIXME
password: "Apo@123456" # FIXME
database: "apo"
clusterName: "ck_clickhouse" # FIXME
replication: "false"

## 配置 APO 组件
# APO-Server 配置
# 配置 APO-Server 不创建 Clickhouse 实例
altinity-clickhouse-operator:
enabled: false
# 持久化配置,推荐打开,默认为false
# 如果为持久化配置则需要根据PVC为 victoria-metrics 和 apo-backend 创建PV
victoria-metrics-single:
server:
persistentVolume:
enabled: true
apo-backend:
persistence:
enabled: true

配置完成,回到《安装 APO-Server》文档继续完成部署

验证

在 APO-Server 部署成功后,apo-collector组件会自动在apo数据库中创建如下 table ,即代表 clickhouse 配置成功

agent_log
agent_log_local
alert_event
alert_event_local
error_propagation
error_propagation_local
...
slow_report
slow_report_local
span_trace
span_trace_local

3. APO-Server 配置使用托管单节点 VictoriaMetrics

准备工作

  • VictoriaMetrics 版本推荐>=1.78

配置 APO-Server 部署文件

创建文件apo-values.yaml,并根据您的需求进行定义,配置下方配置,并在部署阶段挂载配置。

# global.victoriaMetrics.single.url: 托管单节点 VictoriaMetrics 访问地址
# 如果您的 VictoriaMetrics 带有基础认证,则将用户名密码带入 URL
# 如果您的密码带有特殊字符需要转换为 URL 编码字符
# 以 用户名apo,密码Apo@123456 为例
# global:
# victoriaMetrics:
# single:
# url: "http://apo:Apo%40123456@apo-victoria-metrics-single-server-svc:8428"
global:
# apo charts 版本 v1.2.000 及更早版本使用
# victoriaMetricsUrl: "http://apo-victoria-metrics-single-server-svc:8428" # FIXME
victoriaMetrics:
single:
url: "http://apo-victoria-metrics-single-server-svc:8428" # FIXME

## 配置 APO 组件
# APO-Server
# 持久化配置,推荐打开,默认为false
# 如果为持久化配置则需要根据PVC为 clickhouse 创建PV
altinity-clickhouse-operator:
clickhouse:
persistence:
enabled: true
# 配置 APO-Server 不创建 VictoriaMetrics 实例
victoria-metrics-single:
enabled: false
# 如果为持久化配置则需要根据PVC为 apo-backend 创建PV
apo-backend:
persistence:
enabled: true

配置完成,回到《安装 APO-Server》文档继续完成部署

验证

访问 APO 前端中的 Grafana,测试APO-VictoriaMetric数据源能正常链接即可。

4. APO-Server 配置使用托管集群版本 VictoriaMetrics

实验性功能警告

当前APO的对接集群版本 VictoriaMetrics 为实验性功能,可能存在一些缺陷、不稳定性或者尚未完善的体验。

准备工作

  • VictoriaMetrics 版本推荐>=1.78

配置 APO-Server 部署文件

创建文件apo-values.yaml,并根据您的需求进行定义,配置下方配置,并在部署阶段挂载配置。

global:
victoriaMetrics:
# victoriaMetrics-single(single) or victoriaMetrics-cluster(cluster)
# After switching modes, the corresponding URL for the mode needs to be provided.
mode: cluster
cluster:
# selectUrl: "http://<vmselect>:8481/select/<accountID>/prometheus"
selectUrl: http://read-service-url:8080/select/0/prometheus/ # FIXME
# insertUrl: "http://<vmselect>:8481/select/<accountID>/prometheus"
insertUrl: http://write-service-url:8080/insert/0/prometheus/ # FIXME

## 配置 APO 组件
# APO-Server
# 持久化配置,推荐打开,默认为false
# 如果为持久化配置则需要根据PVC为 clickhouse 创建PV
altinity-clickhouse-operator:
clickhouse:
persistence:
enabled: true
# 配置 APO-Server 不创建 VictoriaMetrics 实例
victoria-metrics-single:
enabled: false
# 如果为持久化配置则需要根据PVC为 apo-backend 创建PV
apo-backend:
persistence:
enabled: true

配置完成,回到《安装 APO-Server》文档继续完成部署

验证

访问 APO 前端中的 Grafana,测试APO-VictoriaMetric数据源能正常链接即可。